﻿using System;
using System.ServiceModel;

namespace OCXS.OCXSServiceLibrary.OPCXMLDA10 {

    [MessageContract(
        WrapperName = "SubscriptionPolledRefresh", 
        WrapperNamespace = "http://opcfoundation.org/webservices/XMLDA/1.0/", 
        IsWrapped = true)]
    public class SubscriptionPolledRefreshRequest {

        [MessageBodyMember(Name = "Options", Order = 0)]
        public OCXS.OCXSServiceLibrary.OPCXMLDA10.RequestOptions Options;

        [MessageBodyMember(Name = "ServerSubHandles", Order = 1)]
        public string[] ServerSubHandles;

        [MessageBodyMember(Name = "HoldTime", Order = 2)]
        public System.DateTime HoldTime;

        [MessageBodyMember(Name = "WaitTime", Order = 3)]
        public int WaitTime;

        [MessageBodyMember(Name = "ReturnAllItems", Order = 4)]
        public bool ReturnAllItems;

        public SubscriptionPolledRefreshRequest() {
        }

        public SubscriptionPolledRefreshRequest(OCXS.OCXSServiceLibrary.OPCXMLDA10.RequestOptions Options, string[] ServerSubHandles, System.DateTime HoldTime, int WaitTime, bool ReturnAllItems) {
            this.Options = Options;
            this.ServerSubHandles = ServerSubHandles;
            this.HoldTime = HoldTime;
            this.WaitTime = WaitTime;
            this.ReturnAllItems = ReturnAllItems;
        }
    }
}
